1. Field of the Invention
The present invention relates to a virtual computer server apparatus which transmits an update image for updating an image displayed by a terminal device connected via a network.
2. Description of the Related Art
In order to improve usability, in some computer systems, a terminal device having a minimal input/output interface is provided on the user side, and complicated arithmetic processing is executed on a main body apparatus placed in a remote place.
One such system which has already been proposed projects, for example, frame information (image information) from a main body apparatus (e.g., a personal computer or server computer) onto a remote display terminal via a network (see, for example, the specification in U.S. Pat. No. 6,784,855).
In this system, input information (pen-input information or the like with a digitizer) from the display terminal is also transmitted to the main body apparatus via the network, and the main body apparatus executes actual application program processing. Subsequently, the execution result and frame update information are transferred to the display terminal via the network. The terminal device executes rendering operation based on the received frame update information.
In addition, VNC (Virtual Network Computing) is known as a technique for efficiently transmitting frame information from a main body apparatus on a remote network to a terminal device. According to VNC, when update of a frame is detected, the value of current pixel information is compared with the value of pixel information previously transmitted to a display terminal to determine an update frame which has changed from the previous frame. Furthermore, after the updated display area is subjected to still image compression, only the difference information between compressed frames is transmitted to the display terminal. This can reduce communication bandwidth and processing overhead consumption.
Another virtual computer technique virtualizes resources such as the CPU (Central Processing Unit) and storage device of a computer and executes the virtualized computer. This technique allows a plurality of guest OSs (Operating Systems) to simultaneously operate on one physical computer. Note that a case without any change in guest OSs is called full-virtualization, and a case of partly modifying guest OSs is called para-virtualization. An OS which manages a plurality of guest OSs is called a host OS.
Consider a system which displays, on a terminal device, a screen image from an application or the like operating on a virtual computer server apparatus. In this case, it is necessary to efficiently acquire image information from a frame buffer and transfer the information to an external apparatus. Assume that the content to be actually displayed on the terminal device side is limited to a partial area of the entire screen image managed by a guest operating system. If the means described in the prior art is simply applied to this case, it is necessary to perform update detection processing for the entire screen image. In this case, update of a non-display area on the terminal device is unnecessarily detected, resulting in a deterioration in the processing efficiency of the virtual computer server apparatus.
As described above, according to the prior art, if the frame area to be displayed on a terminal device connected via a network is limited to a part of the screen image on the virtual computer server apparatus which transmits image information, it is necessary to detect an update portion in a non-display area which is not displayed on the terminal device in addition to the display area displayed on the terminal device, resulting in a deterioration in the processing efficiency of the virtual computer server apparatus.